#include<iostream>
#include<vector>
//c++14之后允许推导返回值
auto func(auto a)
{
    return a;
}


int main()
{

    //auto自动类型推导关键字
    //auto a=10,b=1.5;//error:二义性推导
    // int a=10;
    // //int &b=a;
    // auto c=a;//推不出引用 推不出来const
    // c++;
    // std::cout<<a<<std::endl;
    //int a[]={1,2,3,4,5};
    //auto b[10]=a;//auto 不能推导数组类型
    
    //std::vector<int>v;
    //std::vector<auto>v2=v;//不能推导模板
    
    // auto a=func(6);
    // std::cout<<a<<std::endl;
    
    std::vector<int>v={1,2,3,4,5};
    //基于范围的循环:base range for
    for(auto& value:v)
    {
        std::cout<<value<<std::endl;
    }
    return 0;

}